int i, k, l;
PropKind kind;
int prop_name_index = 0;
- GParamSpec *pspec;
+ GType type;
+ char *canonical_name;
kind = get_prop_kind (element);
if (property_name == NULL)
return;
+
+ type = g_type_from_name (class_name);
- pspec = get_property_pspec (data, class_name, property_name, kind);
- if (pspec == NULL)
- return;
-
+ canonical_name = g_strdup (property_name);
+ g_strdelimit (canonical_name, "_", '-');
+
for (k = 0; k < G_N_ELEMENTS (props); k++)
{
- if (pspec->owner_type == props[k].type &&
- strcmp (pspec->name, props[k].property) == 0 &&
+ if (g_type_is_a (type, props[k].type) &&
+ strcmp (canonical_name, props[k].property) == 0 &&
kind == props[k].kind)
{
g_free (element->attribute_values[prop_name_index]);
break;
}
}
+
+ g_free (canonical_name);
}
static Element *
<property name="active">1</property>
<property name="can_focus">1</property>
<property name="receives_default">1</property>
- <property name="expand">True</property>
+ <property name="vexpand">1</property>
+ <property name="hexpand">1</property>
<property name="margin-top">10</property>
<property name="margin-right">10</property>
<property name="margin-bottom">10</property>